package com.ipartek.desarrollo.bean;

// Generated 27-feb-2014 20:53:34 by Hibernate Tools 3.4.0.CR1

import java.math.BigDecimal;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * ComprasPp generated by hbm2java
 */
@Entity
@Table(name = "compras_pp", catalog = "formacion")
public class ComprasPp implements java.io.Serializable {

	private String txnId;
	private Cursos cursos;
	private Partners partners;
	private String payerId;
	private String anioFactura;
	private String numFactura;
	private Date fechaFactura;
	private String addressName;
	private String addressStreet;
	private String addressZip;
	private String addressCity;
	private String addressState;
	private String addressCountry;
	private String addressCountryCode;
	private String residenceCountry;
	private String addressStatus;
	private BigDecimal mcGross;
	private String mcCurrency;
	private Integer quantity;
	private BigDecimal mcFee;
	private String paymentType;
	private Date paymentDate;
	private String paymentStatus;
	private String pendingReason;
	private String reasonCode;
	private String memo;
	private BigDecimal coste;
	private String dni;
	private Integer margen;
	private String fichero;
	private String descFactura;
	private Boolean gestiontripartitaSolicitud;
	private BigDecimal gestiontripartita;
	private Boolean gestiontripartitaIpartek;
	private Boolean tutorizacion;
	private BigDecimal costetutoria;
	private BigDecimal margenpartner;
	private BigDecimal pi;
	private BigDecimal pv;
	private Boolean mt;
	private Set<MatriculasElearning> matriculasElearnings = new HashSet<MatriculasElearning>(
			0);

	public ComprasPp() {
	}

	public ComprasPp(String txnId, Cursos cursos) {
		this.txnId = txnId;
		this.cursos = cursos;
	}

	public ComprasPp(String txnId, Cursos cursos, Partners partners,
			String payerId, String anioFactura, String numFactura,
			Date fechaFactura, String addressName, String addressStreet,
			String addressZip, String addressCity, String addressState,
			String addressCountry, String addressCountryCode,
			String residenceCountry, String addressStatus, BigDecimal mcGross,
			String mcCurrency, Integer quantity, BigDecimal mcFee,
			String paymentType, Date paymentDate, String paymentStatus,
			String pendingReason, String reasonCode, String memo,
			BigDecimal coste, String dni, Integer margen, String fichero,
			String descFactura, Boolean gestiontripartitaSolicitud,
			BigDecimal gestiontripartita, Boolean gestiontripartitaIpartek,
			Boolean tutorizacion, BigDecimal costetutoria,
			BigDecimal margenpartner, BigDecimal pi, BigDecimal pv, Boolean mt,
			Set<MatriculasElearning> matriculasElearnings) {
		this.txnId = txnId;
		this.cursos = cursos;
		this.partners = partners;
		this.payerId = payerId;
		this.anioFactura = anioFactura;
		this.numFactura = numFactura;
		this.fechaFactura = fechaFactura;
		this.addressName = addressName;
		this.addressStreet = addressStreet;
		this.addressZip = addressZip;
		this.addressCity = addressCity;
		this.addressState = addressState;
		this.addressCountry = addressCountry;
		this.addressCountryCode = addressCountryCode;
		this.residenceCountry = residenceCountry;
		this.addressStatus = addressStatus;
		this.mcGross = mcGross;
		this.mcCurrency = mcCurrency;
		this.quantity = quantity;
		this.mcFee = mcFee;
		this.paymentType = paymentType;
		this.paymentDate = paymentDate;
		this.paymentStatus = paymentStatus;
		this.pendingReason = pendingReason;
		this.reasonCode = reasonCode;
		this.memo = memo;
		this.coste = coste;
		this.dni = dni;
		this.margen = margen;
		this.fichero = fichero;
		this.descFactura = descFactura;
		this.gestiontripartitaSolicitud = gestiontripartitaSolicitud;
		this.gestiontripartita = gestiontripartita;
		this.gestiontripartitaIpartek = gestiontripartitaIpartek;
		this.tutorizacion = tutorizacion;
		this.costetutoria = costetutoria;
		this.margenpartner = margenpartner;
		this.pi = pi;
		this.pv = pv;
		this.mt = mt;
		this.matriculasElearnings = matriculasElearnings;
	}

	@Id
	@Column(name = "txn_id", unique = true, nullable = false, length = 17)
	public String getTxnId() {
		return this.txnId;
	}

	public void setTxnId(String txnId) {
		this.txnId = txnId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "item_number", nullable = false)
	public Cursos getCursos() {
		return this.cursos;
	}

	public void setCursos(Cursos cursos) {
		this.cursos = cursos;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "custom")
	public Partners getPartners() {
		return this.partners;
	}

	public void setPartners(Partners partners) {
		this.partners = partners;
	}

	@Column(name = "payer_id", length = 13)
	public String getPayerId() {
		return this.payerId;
	}

	public void setPayerId(String payerId) {
		this.payerId = payerId;
	}

	@Column(name = "anio_factura", length = 4)
	public String getAnioFactura() {
		return this.anioFactura;
	}

	public void setAnioFactura(String anioFactura) {
		this.anioFactura = anioFactura;
	}

	@Column(name = "num_factura", length = 5)
	public String getNumFactura() {
		return this.numFactura;
	}

	public void setNumFactura(String numFactura) {
		this.numFactura = numFactura;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "fecha_factura", length = 19)
	public Date getFechaFactura() {
		return this.fechaFactura;
	}

	public void setFechaFactura(Date fechaFactura) {
		this.fechaFactura = fechaFactura;
	}

	@Column(name = "address_name", length = 128)
	public String getAddressName() {
		return this.addressName;
	}

	public void setAddressName(String addressName) {
		this.addressName = addressName;
	}

	@Column(name = "address_street", length = 200)
	public String getAddressStreet() {
		return this.addressStreet;
	}

	public void setAddressStreet(String addressStreet) {
		this.addressStreet = addressStreet;
	}

	@Column(name = "address_zip", length = 20)
	public String getAddressZip() {
		return this.addressZip;
	}

	public void setAddressZip(String addressZip) {
		this.addressZip = addressZip;
	}

	@Column(name = "address_city", length = 40)
	public String getAddressCity() {
		return this.addressCity;
	}

	public void setAddressCity(String addressCity) {
		this.addressCity = addressCity;
	}

	@Column(name = "address_state", length = 40)
	public String getAddressState() {
		return this.addressState;
	}

	public void setAddressState(String addressState) {
		this.addressState = addressState;
	}

	@Column(name = "address_country", length = 64)
	public String getAddressCountry() {
		return this.addressCountry;
	}

	public void setAddressCountry(String addressCountry) {
		this.addressCountry = addressCountry;
	}

	@Column(name = "address_country_code", length = 2)
	public String getAddressCountryCode() {
		return this.addressCountryCode;
	}

	public void setAddressCountryCode(String addressCountryCode) {
		this.addressCountryCode = addressCountryCode;
	}

	@Column(name = "residence_country", length = 2)
	public String getResidenceCountry() {
		return this.residenceCountry;
	}

	public void setResidenceCountry(String residenceCountry) {
		this.residenceCountry = residenceCountry;
	}

	@Column(name = "address_status", length = 15)
	public String getAddressStatus() {
		return this.addressStatus;
	}

	public void setAddressStatus(String addressStatus) {
		this.addressStatus = addressStatus;
	}

	@Column(name = "mc_gross", scale = 4)
	public BigDecimal getMcGross() {
		return this.mcGross;
	}

	public void setMcGross(BigDecimal mcGross) {
		this.mcGross = mcGross;
	}

	@Column(name = "mc_currency", length = 3)
	public String getMcCurrency() {
		return this.mcCurrency;
	}

	public void setMcCurrency(String mcCurrency) {
		this.mcCurrency = mcCurrency;
	}

	@Column(name = "quantity")
	public Integer getQuantity() {
		return this.quantity;
	}

	public void setQuantity(Integer quantity) {
		this.quantity = quantity;
	}

	@Column(name = "mc_fee", scale = 4)
	public BigDecimal getMcFee() {
		return this.mcFee;
	}

	public void setMcFee(BigDecimal mcFee) {
		this.mcFee = mcFee;
	}

	@Column(name = "payment_type", length = 27)
	public String getPaymentType() {
		return this.paymentType;
	}

	public void setPaymentType(String paymentType) {
		this.paymentType = paymentType;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "payment_date", length = 19)
	public Date getPaymentDate() {
		return this.paymentDate;
	}

	public void setPaymentDate(Date paymentDate) {
		this.paymentDate = paymentDate;
	}

	@Column(name = "payment_status", length = 10)
	public String getPaymentStatus() {
		return this.paymentStatus;
	}

	public void setPaymentStatus(String paymentStatus) {
		this.paymentStatus = paymentStatus;
	}

	@Column(name = "pending_reason", length = 10)
	public String getPendingReason() {
		return this.pendingReason;
	}

	public void setPendingReason(String pendingReason) {
		this.pendingReason = pendingReason;
	}

	@Column(name = "reason_code", length = 20)
	public String getReasonCode() {
		return this.reasonCode;
	}

	public void setReasonCode(String reasonCode) {
		this.reasonCode = reasonCode;
	}

	@Column(name = "memo")
	public String getMemo() {
		return this.memo;
	}

	public void setMemo(String memo) {
		this.memo = memo;
	}

	@Column(name = "Coste", scale = 4)
	public BigDecimal getCoste() {
		return this.coste;
	}

	public void setCoste(BigDecimal coste) {
		this.coste = coste;
	}

	@Column(name = "dni", length = 15)
	public String getDni() {
		return this.dni;
	}

	public void setDni(String dni) {
		this.dni = dni;
	}

	@Column(name = "margen")
	public Integer getMargen() {
		return this.margen;
	}

	public void setMargen(Integer margen) {
		this.margen = margen;
	}

	@Column(name = "fichero", length = 100)
	public String getFichero() {
		return this.fichero;
	}

	public void setFichero(String fichero) {
		this.fichero = fichero;
	}

	@Column(name = "desc_factura")
	public String getDescFactura() {
		return this.descFactura;
	}

	public void setDescFactura(String descFactura) {
		this.descFactura = descFactura;
	}

	@Column(name = "gestiontripartita_solicitud")
	public Boolean getGestiontripartitaSolicitud() {
		return this.gestiontripartitaSolicitud;
	}

	public void setGestiontripartitaSolicitud(Boolean gestiontripartitaSolicitud) {
		this.gestiontripartitaSolicitud = gestiontripartitaSolicitud;
	}

	@Column(name = "gestiontripartita", scale = 4)
	public BigDecimal getGestiontripartita() {
		return this.gestiontripartita;
	}

	public void setGestiontripartita(BigDecimal gestiontripartita) {
		this.gestiontripartita = gestiontripartita;
	}

	@Column(name = "gestiontripartita_ipartek")
	public Boolean getGestiontripartitaIpartek() {
		return this.gestiontripartitaIpartek;
	}

	public void setGestiontripartitaIpartek(Boolean gestiontripartitaIpartek) {
		this.gestiontripartitaIpartek = gestiontripartitaIpartek;
	}

	@Column(name = "tutorizacion")
	public Boolean getTutorizacion() {
		return this.tutorizacion;
	}

	public void setTutorizacion(Boolean tutorizacion) {
		this.tutorizacion = tutorizacion;
	}

	@Column(name = "costetutoria", scale = 4)
	public BigDecimal getCostetutoria() {
		return this.costetutoria;
	}

	public void setCostetutoria(BigDecimal costetutoria) {
		this.costetutoria = costetutoria;
	}

	@Column(name = "margenpartner", scale = 4)
	public BigDecimal getMargenpartner() {
		return this.margenpartner;
	}

	public void setMargenpartner(BigDecimal margenpartner) {
		this.margenpartner = margenpartner;
	}

	@Column(name = "pi", scale = 4)
	public BigDecimal getPi() {
		return this.pi;
	}

	public void setPi(BigDecimal pi) {
		this.pi = pi;
	}

	@Column(name = "pv", scale = 4)
	public BigDecimal getPv() {
		return this.pv;
	}

	public void setPv(BigDecimal pv) {
		this.pv = pv;
	}

	@Column(name = "mt")
	public Boolean getMt() {
		return this.mt;
	}

	public void setMt(Boolean mt) {
		this.mt = mt;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "comprasPp")
	public Set<MatriculasElearning> getMatriculasElearnings() {
		return this.matriculasElearnings;
	}

	public void setMatriculasElearnings(
			Set<MatriculasElearning> matriculasElearnings) {
		this.matriculasElearnings = matriculasElearnings;
	}

}
